@charset "utf-8";

.caption {
    margin-left: 240px;
    
    h2 {
        height: 80px;
        line-height: 80px;
        font-size: 20px;
        
        strong {
            color: #000000;
        }
        
        em {
            color: #878787;
            
            &::before {
                content: "(";
            }
            
            &::after {
                content: ")";
            }
        }
    }
}


.side {
    width: 210px;
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf;
    padding: 26px 0;
    
    dl {
        * {
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }
        
        dt, dd a {
            padding: 0 10px;
        }
        
        dt {
            font-size: 14px;
            font-weight: bold;
            height: 43px;
            line-height: 43px;
            
        }
        
        dd {
            font-size: 13px;
            height: 38px;
            line-height: 38px;
            
            a {
                display: block;
                border-radius: 5px;
                transition: color 500ms ease,
                            background-color 500ms ease;
                &:hover {
                    color: #ffffff;
                    background-color: #eb413d;
                }
            }
        }
    }
}


.content {
    width: 760px;
}

.filtrate {
    border: 1px solid #dfdfdf;
    font-size: 13px;
    
    .line {
        border-bottom: 1px solid #dfdfdf;
        line-height: 32px;
        padding: 10px 18px;
        
        .label {
            width: 60px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            margin-right: 10px;
        }
        
        /***************第一行***************/
        
        .label.max {
            width: auto;
            max-width: 90px;
        }
        
        .condition {
            width: 620px;
            font-size: 0;
            line-height: 16px;
            color: #878787;
            
            &::first-line {
                line-height: 0;
            }
            
            li {
                position: relative;
                display: inline-block;
                vertical-align: text-top;
                max-width: 320px;
                height: 32px;
                line-height: 32px;
                margin-right: 10px;
                padding: 0 26px 0 5px;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                font-size: 13px;
                cursor: default;
                transition: all 500ms ease;
                background-color: #efefef;
                border: 1px solid #9d9d9d;
                &:hover {
                    color: #ffffff;
                    background-color: #f5a09e;
                    border-color: #a95351;
                }
                
                i {
                    position: absolute;
                    top: 0;
                    right: 5px;
                    cursor: pointer;
                    
                    &::before {
                        position: relative;
                    }
                    
                    &:active {
                        &::before {
                            left: 1px;
                            top: 1px;
                        }
                    }
                }
            }
        }
        
        /***************第二行***************/
        
        .brand {
            margin: 0;
            width: 100%;
            position: relative;
            
            .brand_label {
                position: absolute;
                left: 0;
                top: 0;
                bottom: 0;
                width: 78px;
                padding: 10px 0 10px 18px;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
            }
            
            .brand_form {
                padding: 10px 18px 10px 10px;
                margin-left: 78px;
                
                .index {
                    display: none;
                    font-size: 0;
                    margin-top: 5px;
                    
                    li {
                        cursor: pointer;
                        display: inline-block;
                        vertical-align: top;
                        font-size: 13px;
                        line-height: 1em;
                        padding: 3px 5px;
                        transition: color 500ms ease,
                                    border-color 500ms ease;
                        border: 1px solid transparent;
                        
                        &:hover {
                            color: #9d261d;
                            border-color: #9d261d;
                        }
                    }
                }
                
                .list {
                    font-size: 0;
                    line-height: 0;
                    width: 500px;
                    max-height: 160px;
                    overflow: auto;
                    margin-bottom: 8px;
                    
                    li {
                        display: inline-block;
                        width: 110px;
                        margin-right: 10px;
                        
                        &:not(:nth-child(-n+8)) {
                            display: none;
                        }
                        
                        input[type="checkbox"] {
                            display: none;
                            
                            &:checked {
                                ~ label {
                                    i {
                                        border-color: #9d261d;
                                        
                                        &::before {
                                            visibility: visible;
                                        }
                                    }
                                }
                            }
                        }
                        
                        label {
                            cursor: pointer;
                            display: block;
                            font-size: 13px;
                            text-align: center;
                            white-space: nowrap;
                            overflow: hidden;
                            text-overflow: ellipsis;
                            transition: color 500ms ease,
                                    border-color 500ms ease;
                            border: 2px solid transparent;
                            &:hover {
                                color: #9d261d;
                                border-color: #9d261d;
                            }
                            
                            &:active {
                                span {
                                    left: 1px;
                                    top: 1px;
                                }
                            }
                            
                            * {
                                vertical-align: middle;
                                line-height: 28px;
                            }
                            
                            i {
                                display: none;
                                box-sizing: content-box;
                                font-size: 12px;
                                text-align: center;
                                color: #9d261d;
                                line-height: 12px;
                                transition: border-color 500ms ease;
                                border: 1px solid #cccccc;
                                
                                &::before {
                                    visibility: hidden;
                                }
                            }
                            
                            span {
                                position: relative;
                            }
                        }
                    }
                }
                
                .operation {
                    font-size: 0;
                    
                    .btn {
                        color: #000000;
                        border: 1px solid #e7e7e7;
                        background-color: #ffffff;
                        width: 62px;
                        border-radius: 5px;
                        height: 32px;
                        line-height: 32px;
                        
                        &:hover {
                            -webkit-filter: none;
                            filter: none;
                        }
                        
                        ~ .btn {
                            margin-left: 10px;
                        }
                        
                        i {
                            display: inline-block;
                            font-size: 14px;
                            width: 7px;
                            transform: scale(0.50, 0.50);
                            transform-origin: right;
                        }
                        
                        span {
                            font-size: 13px;
                        }
                    }
                    
                    .btn.show_more {
                        i {
                            transform: scale(0.50, 0.50) rotate(180deg);
                        }
                    }
                }
                
                .selected {
                    display: none;
                    font-size: 0;
                    line-height: 0;
                    
                    > * {
                        display: inline-block;
                        vertical-align: top;
                    }
                    
                    div {
                        width: 80px;
                        line-height: 32px;
                        margin-right: 10px;
                        white-space: nowrap;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        font-size: 13px;
                    }
                    
                    ul {
                        width: 532px;
                        line-height: 16px;
                        margin-bottom: 10px;
                        
                        &:first-line {
                            line-height: 0;
                        }
                        
                        li {
                            position: relative;
                            margin-right: 10px;
                            display: inline-block;
                            vertical-align: text-top;
                            font-size: 13px;
                            line-height: 30px;
                            padding: 0 26px 0 5px;
                            white-space: nowrap;
                            overflow: hidden;
                            text-overflow: ellipsis;
                            cursor: default;
                            transition: all 500ms ease;
                            color: #ffffff;
                            background-color: #f5a09e;
                            border: 1px solid #a95351;
                            &:hover {
                                color: #878787;
                                background-color: #efefef;
                                border-color: #9d9d9d;
                            }
                            
                            i {
                                position: absolute;
                                top: 0;
                                right: 5px;
                                cursor: pointer;
                                
                                &::before {
                                    position: relative;
                                }
                                
                                &:active {
                                    &::before {
                                        left: 1px;
                                        top: 1px;
                                    }
                                }
                            }
                        }
                    }
                }
                
                .action {
                    display: none;
                    font-size: 0;
                    text-align: center;
                    
                    .btn {
                        margin: 0;
                        
                        width: 45px;
                        border-radius: 5px;
                        height: 25px;
                        line-height: 23px;
                    
                        &:hover {
                        }
                        
                        ~ .btn {
                            margin-left: 10px;
                        }
                        
                        &:not(:first-child) {
                            margin-left: 5px;
                        }
                    }
                }
            }
        }
        
        .brand.more {
            .brand_form {
                .index {
                    display: block;
                }
                
                .list {
                    height: auto;
                    
                    li {
                        &:not(:nth-child(-n+8)) {
                            display: inline-block;
                        }
                    }
                }
            }
        }
        
        .brand.multiple {
            border: 2px solid #edd28b;
            
            .brand_label {
                background-color: #fffdee;
                width: 96px;
                padding-right: 18px;
            }
            
            .brand_form {
                margin-left: 96px;
                padding-left: 18px;
                
                .index {
                    display: block;
                }
                
                .list {
                    margin-left: 90px;
                    margin-bottom: 8px;
                    height: auto;
                    
                    li {
                        label {
                            text-align: left;
                            
                            i {
                                display: inline;
                            }
                            
                            &:hover {
                                color: #9d261d;
                                border-color: transparent;
                                
                                i {
                                    border-color: #9d261d;
                                }
                            }
                            
                            &:active {
                                left: auto;
                                top: auto;
                            }
                        }
                    }
                }
                
                .operation {
                    display: none;
                }
                
                .selected {
                    display: block;
                }
                
                .action {
                    display: block;
                }
            }
        }
        
        /***************第三行***************/
        
        .price {
            font-size: 0;
            line-height: 16px;
            width: 450px;
            color: #878787;
            
            &::first-line {
                line-height: 0;
            }
            
            li {
                max-width: 50%;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                position: relative;
                cursor: pointer;
                display: inline-block;
                vertical-align: text-top;
                font-size: 13px;
                height: 32px;
                line-height: 28px;
                padding: 0 10px;
                transition: color 300ms ease,
                            border-color 300ms ease;
                border: 2px solid transparent;
//              margin-right: 10px;
                &:hover {
                    color: #9d261d;
                    border-color: #9d261d;
                }
                
                &:active {
                    left: 1px;
                    top: 1px;
                }
            }
        }
        
        .set_price {
            font-size: 0;
            color: #878787;
            
            * {
                display: inline-block;
                vertical-align: middle;
                font-size: 13px;
            }
            
            input[type="text"] {
                width: 45px;
                height: 25px;
                margin: 0 5px;
            }
            
            input[type="submit"] {
                border-radius: 5px;
                width: 45px;
                height: 25px;
                line-height: 23px;
            }
        }
        
        /***************第四行***************/
        
        .season {
            font-size: 0;
            line-height: 16px;
            width: 622px;
            color: #878787;
            
            &::first-line {
                line-height: 0;
            }
            
            li {
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                position: relative;
                cursor: pointer;
                display: inline-block;
                vertical-align: text-top;
                max-width: 25%;
                font-size: 13px;
                padding: 0 10px;
                height: 32px;
                line-height: 28px;
                transition: color 300ms ease,
                            border-color 300ms ease;
                border: 2px solid transparent;
                
                &:hover {
                    color: #9d261d;
                    border-color: #9d261d;
                }
                
                &:active {
                    left: 1px;
                    top: 1px;
                }
            }
        }
    }
    
    .line.nopd {
        padding: 0;
    }
    
    .sort {
        background-color: #efefef;
        padding: 0 18px;
        color: #878787;
        
        ul {
            font-size: 0;
            
            li {
                display: inline-block;
                cursor: pointer;
                padding: 10px;
                transition: color 300ms ease;
                
                &:hover {
                    color: #eb413d;
                }
                
                &:active {
                    em {
                        left: 1px;
                        top: 1px;
                    }
                    
                    span {
                        left: 1px;
                        top: 3px;
                    }
                }
                
                em {
                    position: relative;
                    max-width: 100px;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                    display: inline-block;
                    vertical-align: middle;
                    font-size: 13px;
                }
                
                span {
                    display: none;
                    position: relative;
                    top: 2px;
                    vertical-align: middle;
                    width: 14px;
                    height: 14px;
                    
                    i {
                        position: absolute;
                        display: none;
                        font-size: 14px;
                        transform: scale(0.5, 0.5);
                        
                        &:first-child {
                            top: 0;
                            transform-origin: top;
                        }
                        
                        &:not(:first-child) {
                            bottom: 0;
                            transform-origin: bottom;
                        }
                    }
                }
            }
            
            .selected {
                color: #ffffff;
                background-color: #eb413d;
                
                &:hover {
                    color: #ffffff;
                }
            }
            
            .up {
                span {
                    display: inline-block;
                    
                    i {
                        display: block;
                        
                        &:not(:first-child) {
                            opacity: 0.5;
                        }
                    }
                }
            }
            
            .down {
                span {
                    display: inline-block;
                    
                    i {
                        display: block;
                        
                        &:first-child {
                            opacity: 0.5;
                        }
                    }
                }
            }
        }
    }
}

.goods_list {
    width: 100%;
    font-size: 0;
    
    .list {
        width: 100%;
        padding: 16px 0;
        
        .item {
            width: 32.23684210526316%;
            display: inline-block;
            
            &:not(:nth-child(3n)) {
                margin-right: 1.64473684210526%;
            }
            
            &:not(:nth-child(-n+3)) {
                margin-top: 16px;
            }
        }
    }
}

.module_goods {
    .pic_box {
        border: 1px solid #efefef;
        padding: 20px;
        overflow: hidden;
        height: 243px;
        
        a {
            display: block;
            overflow: hidden;
            height: 100%;
            transition: transform 500ms ease;
            
            img {
                height: 100%;
                display: block;
                margin: auto;
            }
            
            &:hover {
                transform: scale(1.1, 1.1);
            }
        }
    }
    
    p {
        margin-top: 10px;
    }
    
    .goods_name {
        font-size: 16px;
    }
    
    .price {
        font-size: 13px;
        color: #878787;
    }
    
    .label {
        font-size: 0;
        
        a {
            max-width: 25%;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            font-size: 13px;
            height: 20px;
            line-height: 20px;
            display: inline-block;
            padding: 0 10px;
            transition: -webkit-filter 500ms ease,
                        filter 500ms ease;
            color: #ffffff;
            background-color: #eb413d;
            
            &:hover {
                -webkit-filter: brightness(1.3);
                filter: brightness(1.3);
            }
            
            &:nth-child(2n) {
                background-color: #000000;
            }
            
            &:nth-child(3n) {
                background-color: #878787;
            }
            
            &:nth-child(4n) {
                background-color: #EDD28B;
            }
        }
    }
}
